package com.nts.visionworks.core.taglibrary.enumerationtag.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 열거형 상수를 열거형 태그 속성으로 설정하기 위한 어노테이션으로 사용된다. 
 * @author Devcken
 */
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.FIELD)
public @interface EnumerationTagAttribute
{
	/**
	 * 열거형 상수의 태그 명칭을 설정한다.
	 * @return 열거형 상수의 태그 명칭이 반환된다.
	 */
	String name();
	
	/**
	 * 열거형 상수를 첫번째 그룹에 소속시킬 지 여부를 결정한다.
	 * @return 열거형 상수가 첫번째 그룹에 소속되어 있는지 여부를 반환한다.
	 */
	boolean group1() default false;
	
	/**
	 * 열거형 상수를 두번째 그룹에 소속시킬 지 여부를 결정한다.
	 * @return 열거형 상수가 두번째 그룹에 소속되어 있는지 여부를 반환한다.
	 */
	boolean group2() default false;
	
	/**
	 * 열거형 상수를 세번째 그룹에 소속시킬 지 여부를 결정한다.
	 * @return 열거형 상수가 세번째 그룹에 소속되어 있는지 여부를 반환한다.
	 */
	boolean group3() default false;
}